<!DOCTYPE html>
<html lang="en">
<html><head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="author" content="寞踪">
    <title>什么是 XSS 攻击？ &middot; 寞踪的技术博客</title>
	<meta name="description" content="最开心的博客 XSS攻击又称为跨站脚本，XSS的重点不在于跨站点，而是在于脚本的执行。XSS是一种经常出现在Web应用程序中的计算机安全漏洞，是由于Web应用程序对用户的输入过滤不足而产生的，它允许恶意web用户将代码植入到提供给其它用户使用的页面中。"/>

    
    <link href="https://xpmozong.gitee.io/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://xpmozong.gitee.io/css/font-awesome.min.css" rel="stylesheet">
    <link href="https://xpmozong.gitee.io/css/animate.min.css" rel="stylesheet">
    <link href="https://xpmozong.gitee.io/css/blog.css" rel="stylesheet">
    <link href="https://xpmozong.gitee.io/css/responsive.css" rel="stylesheet">
    
	
		<link rel="shortcut icon" href="/images/favicon.ico">
	
</head><body><header id="header">
    <nav class="navbar navbar-inverse navbar-fixed-top" role="banner">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                <a class="navbar-brand" href="/">
					
						<img src="/images/logo.png" alt="logo">
					
				</a>
            </div>

            <div class="collapse navbar-collapse navbar-right">
                <ul class="nav navbar-nav">
					
					
					
						
						
						<li  ><a href="/">首页</a></li>
						
					
						
						
						<li   class="active" ><a href="/posts">博客</a></li>
						
					
						
						
							<li class="dropdown ">
							    <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
									分类 <i class="fa fa-angle-down"></i>
								</a>
							    <ul class="dropdown-menu">
									
							        <li><a href="/categories/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8">网络安全</a></li>
									
							        <li><a href="/categories/web3">web3</a></li>
									
							        <li><a href="/categories/lotus">lotus</a></li>
									
							    </ul>
							</li>
						
					
						
						
						<li  ><a href="/tags">标签</a></li>
						
					
						
						
						<li  ><a href="/about">关于我</a></li>
						
					
						
						
						<li  ><a href="/links">友情链接</a></li>
						
					
                </ul>
            </div>
        </div>
        
    </nav>
    
</header>

    <div class="page-title" style="background-image: url(https://xpmozong.gitee.io/images/page-title.jpg)">
        <h1>Single Blog</h1>
    </div>
    <section id="blog">
        <div class="blog container">
            <div class="row">
                <div class="col-md-8">
                    <div class="blog-item">
                        <div class="blog-content">
                            <h2>什么是 XSS 攻击？</h2>
                            <div class="post-meta">
                                <p><i class="fa fa-clock-o"></i> October 2, 2022</p>
								<p>字数: 725</p>
                            </div>
                            <p><img src="blog2.jpg" alt="img"></p>
<h2 id="什么是xss攻击">什么是XSS攻击？</h2>
<p>XSS攻击又称为跨站脚本，XSS的重点不在于跨站点，而是在于脚本的执行。XSS是一种经常出现在Web应用程序中的计算机安全漏洞，是由于Web应用程序对用户的输入过滤不足而产生的，它允许恶意web用户将代码植入到提供给其它用户使用的页面中。</p>
<p>XSS本质是代码注入。通过某种方式在受攻击网站中注入一些恶意代码，当用户访问该网站去触发这段脚本。</p>
<h2 id="xss攻击有哪几种类型">XSS攻击有哪几种类型？</h2>
<p>常见的XSS攻击有三种：反射型XSS攻击、DOM型XSS攻击、存储型XSS攻击。</p>
<h3 id="第一种反射型xss攻击">第一种：反射型XSS攻击</h3>
<p>有些网页会将 url 中的一些数据作为渲染的内容去渲染。</p>
<p>比如我们希望用户支付完订单后跳转到一个结果页，这个页面通过 url 中的 query 字符串来显示一些内容，比如<code>http://a.com/order?message=成功</code> ，我们会读取 message 的值 “成功”，将这个文案渲染到页面上。</p>
<p>如果这个 “成功” 被黑客替换为恶意脚本，变成 <code>http://a.com/order?message=&lt;script&gt;// 恶意脚本内容&lt;/script&gt;</code></p>
<p>当然这个链接很奇怪，用户在常规情况下无法访问到这样的链接。</p>
<p>所以攻击者就需要先组装好，然后通过一些方式诱导用户去访问它，比如通过钓鱼邮件诱导点击。</p>
<h3 id="第二种dom型xss攻击">第二种：DOM型XSS攻击</h3>
<p>DOM 型 XSS 和反射型有点类似，但它和后端无关，是前端的问题。</p>
<p>DOM 型 XSS 是服务端没有返回完整的 HTML，而是让前端做拼装渲染，如果没有做特殊处理，也会导致恶意代码注入。</p>
<h3 id="第三种存储型xss攻击">第三种：存储型XSS攻击</h3>
<p>恶意脚本被持久化保存在数据库中。比如在自己的个人介绍的文本内容中，使用 <code>&lt;script&gt;// 这里是一些恶意代码&lt;/script&gt;</code></p>
<p>当用户访问攻击者的个人主页时，如果服务端渲染时就会用上这段数据，没有做特别的转义处理，渲染出来的 HTML 中就带上了这个脚本，然后执行。</p>
<h2 id="xss防御">XSS防御</h2>
<p>对用户提交的数据进行转义</p>

                            
                            <div class="inner-meta block">
								
									
										<a href="https://xpmozong.gitee.io/tags/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8">网络安全</a>
									
								
                            </div>
                        </div>
                    </div>
                    
					
                    <div class="paging">
                        
                          <div class="block previous"><a href="https://xpmozong.gitee.io/posts/csrf%E6%94%BB%E5%87%BB%E6%98%AF%E4%BB%80%E4%B9%88/">&lt;- CSRF攻击是什么？</a></div>
                        
                        
                          <div class="block next"><a href="https://xpmozong.gitee.io/posts/lotus%E5%A4%8D%E5%88%B6%E8%AF%81%E6%98%8E%E6%BA%90%E7%A0%81%E6%A2%B3%E7%90%86/"> Lotus复制证明源码梳理 -></a></div>
                        
                    </div>
					
                </div>
                
				
				<aside class="col-md-4">
					<div class="toc" id="mright">
						<div class="widget">
							<h3 class="widget-title section-title">目录</h3>
							<div class="row">
								<div class="col-sm-12 widget--toc">
									<nav id="TableOfContents">
  <ul>
    <li><a href="#什么是xss攻击">什么是XSS攻击？</a></li>
    <li><a href="#xss攻击有哪几种类型">XSS攻击有哪几种类型？</a>
      <ul>
        <li><a href="#第一种反射型xss攻击">第一种：反射型XSS攻击</a></li>
        <li><a href="#第二种dom型xss攻击">第二种：DOM型XSS攻击</a></li>
        <li><a href="#第三种存储型xss攻击">第三种：存储型XSS攻击</a></li>
      </ul>
    </li>
    <li><a href="#xss防御">XSS防御</a></li>
  </ul>
</nav>
								</div>
							</div>
						</div>
					</div>
				</aside>
				
            </div>
            
        </div>
    </section>
    
<section id="bottom">
	<div class="container fadeInDown" data-wow-duration="1000ms" data-wow-delay="600ms">
		<div class="row">
			<div class="col-md-2">
				<a href="/" class="footer-logo">
					
						<img src="https://xpmozong.gitee.io/images/dark-logo.png" alt="logo">
					
				</a>
			</div>
			<div class="col-md-10">
				<div class="row">
					<div class="col-md-3 col-sm-6">
						<div class="widget">
							<h3>近期文章</h3>
							<ul>
								
								
									<li><a href="https://xpmozong.gitee.io/posts/lotus%E6%97%B6%E7%A9%BA%E8%AF%81%E6%98%8E%E6%BA%90%E7%A0%81%E6%A2%B3%E7%90%86/">Lotus时空证明源码梳理</a></li>
								
									<li><a href="https://xpmozong.gitee.io/posts/lotus%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E6%BA%90%E7%A0%81%E6%A2%B3%E7%90%86/">Lotus任务调度源码梳理</a></li>
								
									<li><a href="https://xpmozong.gitee.io/posts/lotus%E5%A4%8D%E5%88%B6%E8%AF%81%E6%98%8E%E6%BA%90%E7%A0%81%E6%A2%B3%E7%90%86/">Lotus复制证明源码梳理</a></li>
								
									<li><a href="https://xpmozong.gitee.io/posts/%E4%BB%80%E4%B9%88%E6%98%AF-xss-%E6%94%BB%E5%87%BB/">什么是 XSS 攻击？</a></li>
								
									<li><a href="https://xpmozong.gitee.io/posts/csrf%E6%94%BB%E5%87%BB%E6%98%AF%E4%BB%80%E4%B9%88/">CSRF攻击是什么？</a></li>
								
							</ul>
						</div>
					</div>
					
					<div class="col-md-3 col-sm-6">
						<div class="widget">
							<h3>文章归档</h3>
							<ul>
								
									
								
								
								
								
								
								<li><a href="/archives#2022.10">2022.10</a></li>
								
							</ul>
						</div>
					</div>
					

					<div class="col-md-3 col-sm-6">
						<div class="widget">
							<h3>文章分类</h3>
							<ul>
								
									<li><a href="/categories/lotus/">Lotus(3)</a></li>
								
									<li><a href="/categories/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/">网络安全(2)</a></li>
								
							</ul>
						</div>
					</div>
					
					<div class="col-md-3 col-sm-6">
						<div class="widget">
							<h3>文章标签</h3>
							<ul>
								
									<li><a href="/tags/lotus/">Lotus(3)</a></li>
								
									<li><a href="/tags/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/">网络安全(2)</a></li>
								
							</ul>
						</div>
					</div>
					
				</div>
			</div>
		</div>
	</div>
</section>


<footer id="footer" class="midnight-blue">
    <div class="container">
        <div class="row">
            <div class="col-sm-6">
                &copy; 
				
					2020 - 
				
				2022
				
					寞踪 All Rights Reserved. <br/>
				
				
				
				
		
				Built with <a href="https://gohugo.io/" target="_blank" rel="noopener">Hugo</a> <br />
				主题 <b><a href="https://gitee.com/xpmozong/xpmozong" target="_blank" rel="noopener" data-version="%!s(MISSING)">Wave</a></b> 由 <a href="https://gitee.com/xpmozong" target="_blank" rel="noopener">寞踪</a> 设计
            </div>
            <div class="col-sm-6">
                <ul class="pull-right">
					
					
					
						
						<li  >
							<a href="/">首页</a>
						</li>
                    
						
						<li   class="active" >
							<a href="/posts">博客</a>
						</li>
                    
						
						<li  >
							<a href="/categories">分类</a>
						</li>
                    
						
						<li  >
							<a href="/tags">标签</a>
						</li>
                    
						
						<li  >
							<a href="/about">关于我</a>
						</li>
                    
						
						<li  >
							<a href="/links">友情链接</a>
						</li>
                    
                </ul>
            </div>
        </div>
    </div>
</footer>

<script src="https://xpmozong.gitee.io/js/jquery.js "></script>
<script src="https://xpmozong.gitee.io/js/bootstrap.min.js "></script>
<script src="https://cdn.jsdelivr.net/npm/fuse.js/dist/fuse.js"></script>
<script src="https://xpmozong.gitee.io/js/search.js"></script>
<script src="https://xpmozong.gitee.io/js/main.js"></script></body>
</html>
